<?php

/**
 * Smarty plugin
 * @package Smarty
 * @subpackage plugins
 */
/**
 * Smarty assign_smarty_interface core plugin
 *
 * Type:     core<br>
 * Name:     assign_smarty_interface<br>
 * Purpose:  assign the $smarty interface variable
 * @param array Format: null
 * @param Smarty
 */
function smarty_core_assign_smarty_interface($params, &$smarty) {
	if(isset($smarty->_smarty_vars) && isset($smarty->_smarty_vars['request'])) {
		return;
	}
	$_globals_map = array('g' => 'HTTP_GET_VARS' , 'p' => 'HTTP_POST_VARS' , 'c' => 'HTTP_COOKIE_VARS' , 's' => 'HTTP_SERVER_VARS' , 'e' => 'HTTP_ENV_VARS');
	$_smarty_vars_request = array();
	foreach(preg_split('!!', strtolower($smarty->request_vars_order)) as $_c) {
		if(isset($_globals_map[$_c])) {
			$_smarty_vars_request = array_merge($_smarty_vars_request, $GLOBALS[$_globals_map[$_c]]);
		}
	}
	$_smarty_vars_request = @array_merge($_smarty_vars_request, $GLOBALS['HTTP_SESSION_VARS']);
	$smarty->_smarty_vars['request'] = $_smarty_vars_request;
}
/* vim: set expandtab: */
?>
